package com.tudouji.project.farepay.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.flow.service.pojo.BasePojo;
import com.tudouji.framework.aspectj.lang.annotation.Excel;
import com.tudouji.project.flow.domain.Flowtempnode;
import com.tudouji.project.system.domain.Tuser;
import com.tudouji.project.system.domain.Upimage;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 物流运费付款申请对象 farepay_apply
 *
 * @author tudouji
 * @date 2021-10-27
 */
@Data
public class FarepayApply extends BasePojo
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 付款主体id */
    @Excel(name = "付款主体id")
    private String orgguid;

    /** 付款主体 */
    @Excel(name = "付款主体")
    private String orgname;

    /** 支付金额 */
    @Excel(name = "支付金额")
    private BigDecimal amount;
    private BigDecimal otheramount;
    private BigDecimal totalamount;

    /** 申请金额 */
    @Excel(name = "申请金额")
    private BigDecimal applyAmount;

    /** 供应商id */
//    @Excel(name = "供应商id")
//    private String supplierId;

    /** 供应商 */
    @Excel(name = "供应商")
    private String supplierName;

    /** 编码 */
    @Excel(name = "编码")
    private String code;

    /** 部门id */
    @Excel(name = "部门id")
    private String departid;

    /** 部门 */
    @Excel(name = "部门")
    private String departname;

    /** 流程id */
    @Excel(name = "流程id")
    private String flowid;

    /** 发票标识 */
    @Excel(name = "发票标识")
    private Integer invoiceon;

    /** 银行 */
    @Excel(name = "银行")
    private String bank;

    /** 银行帐号 */
    @Excel(name = "银行帐号")
    private String bankCode;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;
    private String statusStr;

    /** 操作人 */
    @Excel(name = "操作人")
    private String operatorid;

    /** 操作人 */
    @Excel(name = "操作人")
    private String operator;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createtime;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastupdate;

    private String search;

    private Integer[] stats;

    private String[] depids;

    private List<FarepayDetails> items;

    private List<Flowtempnode> nodes;

    private String statusname;

    private String opinion;

    private String imgids;

    private Tuser user;
    private String fileIds;
    private List<Upimage> files;

    private Long createBy;

    public void prepareForProcess(){
        setBusTable("fareapply");
    }

}
